﻿namespace K9Nano.Reporting;

public interface IReportManager
{
    Task DeleteAsync(int id, CancellationToken cancellation);
    Task<Report?> GetAsync(int id, CancellationToken cancellation);
    Task<ReportForm?> GetReportFormAsync(int id, CancellationToken cancellation);
    Task<IEnumerable<ReportSummary>> GetReportSummariesAsync(CancellationToken cancellation);
    Task SaveAsync(Report report, CancellationToken cancellation);
    Task<bool> SetStatusAsync(int id, bool isEnabled, CancellationToken cancellation);
}